/**
 * 整个项目api的管理
 *
 */
import request from "./request"


/**
 * 删除活动
 * @param {string} id 活动ID
 */
export function deleteActivity(id) {
    return request({
        url: `activity/delete/${id}`,
        method: 'post',
    });
}

/**
 * 获取活动详情
 * @param {string} activityId 活动ID
 */
export function fetchActivityDetails(activityId) {
    return request({
        url: `activity/detail/${activityId}`,
        method: 'get',
    });
}

/**
 * 获取活动列表
 * @returns {Promise} 包含活动列表数据的 Promise 对象
 */
export function fetchActivities() {
    return request({
        url: '/activity/list',
        method: 'get',
    });
}

/**
 * 创建活动
 * @param {Object} activityData 活动数据对象
 * @returns {Promise} 包含服务器响应的 Promise 对象
 */
export function createActivity(activityData) {
    const url = '/activity/create';
    return request({
        url: url,
        method: 'post',
        data: activityData, // 使用 data 属性传递请求体数据
    });
}

export function getActivitiesForReview() {
    return request({
        url: '/activity/listReview',
        method: 'get',
    });
}

export function approveActivity(id) {
    return request({
        url: `/activity/updateStatus/${id}`,
        method: 'post',
    });
}

export function rejectActivity(id) {
    return request({
        url: `/activity/rejectStatus/${id}`,
        method: 'post',
    });
}

/**
 * 添加用户
 * @param {Object} userData 用户数据对象
 * @returns {Promise} 包含服务器响应的 Promise 对象
 */
export function addUser(userData) {
    const url = '/user/addUser';
    return request({
        url: url,
        method: 'post',
        data: userData,
    });
}

/**
 * 用户登录
 * @param {Object} userData 用户数据对象
 * @returns {Promise} 包含服务器响应的 Promise 对象
 */
export function login(userData) {
    const url = '/user/login';
    return request({
        url: url,
        method: 'post',
        data: userData,
    });
}

/**
 * 获取权限列表
 * @returns {Promise} 包含权限列表数据的 Promise 对象
 */
export function fetchPermissions() {
    const url = '/user/permission';
    return request({
        url: url,
        method: 'get',
    });
}

/**
 * 更新权限
 * @param {number} id 权限ID
 * @param {string} permission 权限等级
 * @returns {Promise} 包含服务器响应的 Promise 对象
 */
export function updatePermission(id, permission) {
    const url = `/user/updatePermission/${id}`;
    return request({
        url: url,
        method: 'post',
        data: { permission },
    });
}

/**
 * 删除权限
 * @param {number} id 权限ID
 * @returns {Promise} 包含服务器响应的 Promise 对象
 */
export function deletePermission(id) {
    const url = `/user/delete/${id}`;
    return request({
        url: url,
        method: 'post',
    })
}

/**
 * 用户注册
 * @param {Object} userInfo 用户信息对象
 * @returns {Promise} 包含服务器响应的 Promise 对象
 */
export function registerUser(userInfo) {
    const url = '/user/register';
    return request({
        url: url,
        method: 'post',
        data: userInfo,
    });
}